package tools;

import org.apache.commons.math.linear.Array2DRowRealMatrix;
import org.apache.commons.math.linear.LUDecomposition;
import org.apache.commons.math.linear.LUDecompositionImpl;


public class Tablice {
	
	public static double[][] transponuj(double[][] tablica) {
	    double[][] wynik = new Array2DRowRealMatrix(tablica).transpose().getData();
		return wynik;
	}
	
	/**
	 * Oblicza wyznacznik macierzy.
	 * @param dane
	 * @return
	 */
	public static double policzMacierzWyznacznik (double[][] dane) {
		Array2DRowRealMatrix macierz = new Array2DRowRealMatrix(dane);
		LUDecomposition luDecomposition = new LUDecompositionImpl(macierz);
		double wyznacznik = luDecomposition.getDeterminant();
		
		return wyznacznik;
	}
}

